package com.zhijian.medical.entity.vo.request;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.Min;
import java.io.Serializable;

/**
 * 考核主表 查询条件vo
 *
 * @author HCG
 * @version 1.0
 * @date 2023-01-17 16:55:26
 */
@Data
@Api(tags = "考核主表查询条件vo")
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AssessmentSearchVo implements Serializable {

    private static final long serialVersionUID = -1;

    /**
     * 页码
     */
    @ApiModelProperty("页码")
    @Min(value = 1, message = "页码最小为1")
    private Integer pageNum;

    /**
     * 数据库查询参数，前端忽略
     */
    @ApiModelProperty(value = "页码", hidden = true)
    private Integer startIndex;

    /**
     * 条数
     */
    @ApiModelProperty("每页显示的条数")
    @Min(value = 1, message = "每页显示的条数最小为1")
    private Integer pageSize;

    /**
     * 名称
     */
    @ApiModelProperty("名称")
    private String name;

    /**
     * 状态，0：未开始，1：进行中，2：已结束
     */
    @ApiModelProperty("状态，0：未开始，1：进行中，2：已结束")
    private Byte status;

    /**
     * 考生id
     */
    @ApiModelProperty(value = "考生id", hidden = true)
    private Long doPersonId;

    /**
     * 开始时间
     */
    @ApiModelProperty("开始时间")
    private String startTime;

    /**
     * 结束时间
     */
    @ApiModelProperty("结束时间")
    private String endTime;

    /**
     * 人员类型，0：在职员工，1：规培生，2：进修生，3：研究生，4：辅助人员，5：专项培训人员
     */
    @ApiModelProperty("人员类型，0：在职员工，1：规培生，2：进修生，3：研究生，4：辅助人员，5：专项培训人员")
    private Byte userType;

    /**
     * 学习班ID
     */
    @ApiModelProperty("学习班ID")
    private Long studyClassId;

}